
                        ************* Audio Mechanica - By Art 2006 *************
                        for Sony PSP - (Playstation Portable) with 1.50 firmware.
                        *********************************************************

                           Based on Audio input/output library by lteixeira.


*********************************************************************************************************

Hi Guys,
This is the latest release of my digital audio recorder / effects processor program made possible with
lteixeira's audio input library.

The Virtual Tape Recorder mode features voice activation, and a basic ascii graphic waveform monitor.
There is also a new Digital Delay Processor mode that plays everything that is recieved at it's input
after a user defined delay that can be set and adjusted at runtime.

You need a Socom compatible headset and PSP headphone remote control for this to recieve microphone input.

There are numerous other mods to tap a microphone input out of your remote, or find a 4 conductor
3.5mm jack, and convert your own standard PC microphone headset, or, as I have done, convert a mobile
phone headset for use with the PSP. Details of these mods are posted on PSPU forums, and ps2dev.org forums.
In my experience, mobile phone headsets don't have the volume (or the mic output) of the original PSP headset.

*********************************************************************************************************

PROGRAM OPERATION:

Copy the two 'Audio_Mechanica' folders into your PSP/GAME directory, and be sure there is at
least 20Mb free on your Memory Stick. Although the application itself is small, a 20Mb "Reel.wav" file
will be created in the program directory when the program is first launched.

Plug in your Headphone remote, and Socom compatible headset, then when you launch the program,
and the Reel.dat file is created on your Memory Stick, you are presented with a screen that contains
some display data in green that indicates the recorder is initialy started in playback mode.

- Use D pad up and down to cycle program modes between Tape Recorder mode, Voice activation mode,
  Demo Effect modes, Yakback Emulator mode, and Echo Processor mode.

- To adjust the audio bitrate (and recording time) press sideways on the D pad while in a recorder mode.

- To toggle between Record and Playback modes, press Triangle while playing or recording is stopped.
  Red text will indicate that the recorder is in record mode. The Digital Delay Processor,
  and Yakback Emulator modes both force recording mode to be active for their operation.

- To start or stop recording or playback, or to start the selected effect mode, press Cross.
  Recording or Playback is started from the current reel position displayed in data words,
  and also expressed in Megabytes (0 - 22 Mb).
  The virtual tape Reel will auto loop if it reaches the upper limit during playback, and will auto stop
  if a recording is allowed to reach the end of the reel while in Tape Recorder, or Voice Activation mode.

- To Fast Foward or Rewind the reel position press the Left or Right Shoulder buttons.
  The virtual tape Reel will auto loop if it reaches the upper or lower limit unless playing.
  Fast foward and Rewind functions do not work while recording.

- To reset the index position press Square while in stop mode.

- To erase the reel in RAM, and delete the reel.wav file, press Play on the headphone remote
  while holding down the Square button on the PSP unit.

- Press Circle to exit the program. A prompt will then provide the option to save changes to the reel.

- Headphone remote buttons duplicate some of these features. See the included diagram.

*********************************************************************************************************

Notes:

The Background picture in the Game select screen is my own photo, taken at Mount Barney Upper Portals
Southeast Queensland, Australia. The flowing water sound was captured within a few kilometers of this
area, at Mount Barney Lower Portals (Mt Barney Creek) 7th of October 2006. A special trip was taken after
working on the VOX feature earlier that morning with the intention of recording sounds for two different
eboots. Unfortunately, it was too late to hear 

I purchased the Socom game, so this program is now tested with the genuine PSP headset (PSP-270 x).
The genuine PSP microphone headset is innovative, and value for money with the Socom game, at least in
my opinion. It would be nice, however, to have the option of buying the headset seperately in Australia.

*********************************************************************************************************

Version History:

Audio Mechanica V6 (12/10/06):
Implemented a live Digital Delay Processor with user defined delay period.
Implemented Yakback emulator mode (Repeats everything like a parrot). This mode records constantly,
and stops to play chunks of continuous sound.
Added option to exit the program without saving reel.
Headphone remote buttons that are not pertinent to effect modes are disabled while effect modes are active.

Virtual Tape Recorder V5b (08/10/06):
Increased virtual reel buffer to 22 Mb which provides more recording time for every sample rate.
Implemented MPH's free RAM display at startup to keep track of RAM consumption during development.
Added a visible VOX sensitivity indicator, and the vox sensitivity is now adjustable.
Fixed voice activation routine to scan the wave for peaks so the VOX indicator can work properly.
Other small fixes, and code optimisations.
Added demonstration eboot sound.

Virtual Tape Recorder V5 (06/10/06):
Fixed live monitor to work properly for all supported sample rates, and removed the option to turn
the live monitor off.
Added support for 5512 sample rate which allows over 30 minutes of recording time at low quality.

Virtual Tape Recorder V4d (04/10/06):
Lowered the sensitivity of voice activation for outdoor or possible use in an industrial environment.
Fixed VOX delay time for uniformity across the three supported sample rates.
Added effect demo loop feature to the D pad menu so the hold switch on the remote can be
used as normal.
Fixed effect demo waveform screen so that screen text is not shown.
Tested with genuine Socom headset.

Virtual Tape Recorder V4c (02/10/06):
Expanded waveform again because it looks smoother.
Fix to right hand side of waveform monitor screen.
Added voice activation feature.

Virtual Tape Recorder V4b (01/10/06):
Fixed reset reel index bug. Display was showing 1024 instead of 0 after reset since V4.
Inverted the waveform for graphic waveform monitor. Wave starts from the bottom and moves up.
Compressed waveform on both axis to better fit the screen.
Fixed waveform monitor for effect mode.
Implemented a quick erase reel feature.
Code optimisation.

Virtual Tape Recorder V4 (30/09/06):
Implemented live waveform monitor that provides visual indication that the program and microphone
are operating correctly. Thanks to Saotome for sample code pertaining to this.
Virtual tape reel index position is no longer reset when switching between record and playback modes.
Recording is now stopped rather than looped if a recording is allowed to reach the end of the reel.

Virtual Tape Recorder V3d (26/09/06):
Fixed repeating indicator sound problem when mode is selected with remote control.
Added the option to turn live record monitor on or off.
Added a Mikmod error handler (informs of missing indicator "blip", etc).

Virtual Tape Recorder V3c (25/09/06):
Reel position is now saved to a file upon exit, and loaded at startup, so your index position
is not lost when the program exits.

Virtual Tape Recorder V3b (24/09/06):
Added effect demo loop effect. This is the high frequency 'chipmonk' effect.
Added ASCII graphic play, record, and stop indicators.
Fixed new screen bugs introduced in V3

Virtual Tape Recorder V3 (24/09/06):
Fully supports three different bitrates (44100, 22050, and 11025), which allows for greater
possible recording time.
Displays the available recording time for each supported bitrate.
Program checks for at least 21Mb free space on the Memory Stick before creating the 20Mb Reel.wav file.
Microphone gain control is disabled. Although it is defined in the audio input library, I don't believe
that adjusting it has any effect.

Virtual Tape Recorder V2f (23/09/06):
Mikmod implementation allows indicator sounds for play, record, stop, and reset functions.
Square button resets file index position to zero.
Home button is disabled, program can only exit with Circle button to prevent exit wothout saving.
Program exit with Circle button is not allowed while playing or recording, only while stopped.
Mode swap from record to play, or vice versa, is only allowed in stop mode.

Virtual Tape Recorder V2e (23/09/06):
Screen bugs fixed.
Triangle button only works in stop mode.
Left and Right D pad changes sample rates for record only. This is an experimental feature included
in this release for the interesting sound effect.

Virtual Tape Recorder V2d (19/09/06):
Fixed Rewind to work at correct speed.
Reel is now a Microsoft compliant wav file.

Virtual Tape Recorder V2c (17/09/06):
Fixed a bug introduced with the last release to do with the way fast foward and rewind buttons work.

Virtual Tape Recorder V2b (16/09/06):
Screen errors fixed.
Fast foward and rewind can be used during playback, and are disabled during recording.
Microphone level is adjustable.

Virtual Tape Recorder V2 (16/09/06):
Headphone remote buttons implemented.

Virtual Tape Recorder V1 (16/09/06):
First release.

*********************************************************************************************************